package com.baobao.dao;

import com.baobao.domain.Notice;

import java.util.Calendar;
import java.util.Set;

import org.skyway.spring.util.dao.JpaDao;

import org.springframework.dao.DataAccessException;

/**
 * DAO to manage Notice entities.
 * 
 */
public interface NoticeDAO extends JpaDao<Notice> {

	/**
	 * JPQL Query - findNoticeBySchoolIdContaining
	 *
	 */
	public Set<Notice> findNoticeBySchoolIdContaining(String schoolId) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeBySchoolIdContaining
	 *
	 */
	public Set<Notice> findNoticeBySchoolIdContaining(String schoolId, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByContentContaining
	 *
	 */
	public Set<Notice> findNoticeByContentContaining(String content) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByContentContaining
	 *
	 */
	public Set<Notice> findNoticeByContentContaining(String content, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByContent
	 *
	 */
	public Set<Notice> findNoticeByContent(String content_1) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByContent
	 *
	 */
	public Set<Notice> findNoticeByContent(String content_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByPrimaryKey
	 *
	 */
	public Notice findNoticeByPrimaryKey(String schoolId_1, java.util.Calendar time) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByPrimaryKey
	 *
	 */
	public Notice findNoticeByPrimaryKey(String schoolId_1, Calendar time, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeBySummary
	 *
	 */
	public Set<Notice> findNoticeBySummary(String summary) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeBySummary
	 *
	 */
	public Set<Notice> findNoticeBySummary(String summary, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByTitle
	 *
	 */
	public Set<Notice> findNoticeByTitle(String title) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByTitle
	 *
	 */
	public Set<Notice> findNoticeByTitle(String title, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeBySchoolId
	 *
	 */
	public Set<Notice> findNoticeBySchoolId(String schoolId_2) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeBySchoolId
	 *
	 */
	public Set<Notice> findNoticeBySchoolId(String schoolId_2, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByTitleContaining
	 *
	 */
	public Set<Notice> findNoticeByTitleContaining(String title_1) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByTitleContaining
	 *
	 */
	public Set<Notice> findNoticeByTitleContaining(String title_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByAuthorContaining
	 *
	 */
	public Set<Notice> findNoticeByAuthorContaining(String author) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByAuthorContaining
	 *
	 */
	public Set<Notice> findNoticeByAuthorContaining(String author, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByTime
	 *
	 */
	public Set<Notice> findNoticeByTime(java.util.Calendar time_1) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByTime
	 *
	 */
	public Set<Notice> findNoticeByTime(Calendar time_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeBySummaryContaining
	 *
	 */
	public Set<Notice> findNoticeBySummaryContaining(String summary_1) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeBySummaryContaining
	 *
	 */
	public Set<Notice> findNoticeBySummaryContaining(String summary_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByAuthor
	 *
	 */
	public Set<Notice> findNoticeByAuthor(String author_1) throws DataAccessException;

	/**
	 * JPQL Query - findNoticeByAuthor
	 *
	 */
	public Set<Notice> findNoticeByAuthor(String author_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findAllNotices
	 *
	 */
	public Set<Notice> findAllNotices() throws DataAccessException;

	/**
	 * JPQL Query - findAllNotices
	 *
	 */
	public Set<Notice> findAllNotices(int startResult, int maxRows) throws DataAccessException;

}